package com.itboye.sunsun.network;

import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;

import android.util.Log;

import com.android.volley.RequestQueue;
import com.android.volley.toolbox.Volley;
import com.itboye.sunsun.Application.App;
import com.itboye.sunsun.constants.NetPublicConstant;
import com.itboye.sunsun.utils.ParamDeal;
import com.itboye.sunsun.utils.TimesUtils;
import com.squareup.okhttp.FormEncodingBuilder;
import com.squareup.okhttp.OkHttpClient;
import com.squareup.okhttp.Request;
import com.squareup.okhttp.RequestBody;
import com.squareup.okhttp.Response;

/**
 * volley RequestQueue
 * @author 64
 *
 */
public class HttpRequest {
	
	private static RequestQueue defaultQueue;
	/**
	 * 
	 * @return
	 */
	public static  RequestQueue getDefaultRequestQueue(){
		
		if (defaultQueue==null) {
			 defaultQueue=Volley.newRequestQueue(App.ctx);
		}
		 
		return defaultQueue;
	}

	
//	private static HttpRequest request;
//    private ExecutorService executorService;
//	
//	
//    //建立4个线程
//    private HttpRequest()
//    {
//    	executorService=Executors.newFixedThreadPool(4);
//    }
//	
//	
//	//建立单例类
//	public static synchronized HttpRequest getInstance() {
//
//		if (request == null) {
//			request = new HttpRequest();
//		}
//
//		return request;
//
//	}
//
//	
//	
//	public void execute(final Map<String,String>map,final String type)
//	{
//		executorService.execute(new Runnable() {
//			
//			@Override
//			public void run() {
//				
//				
//				
//				String time=TimesUtils.getStamp();
//				
//				ParamDeal paraDeal=new ParamDeal();
//				String data=paraDeal.dataEncrypt(map);
//				String sign=paraDeal.getMD5Sign(time, type, data,NetPublicConstant.Client_Id_Value,NetPublicConstant.Notify_Id_Value);
//				
//				try
//				{
//					
//					
//					OkHttpClient client=new OkHttpClient();
//					client.setConnectTimeout(10, TimeUnit.SECONDS);
//					client.setReadTimeout(10, TimeUnit.SECONDS);
//					client.setWriteTimeout(10, TimeUnit.SECONDS);
//					FormEncodingBuilder fBuilder = new FormEncodingBuilder();
//					
//					
//					
//					//公共参数
//					fBuilder.add(NetPublicConstant.Grant_Type_Key,NetPublicConstant.Grant_Type_Value);
//					fBuilder.add(NetPublicConstant.Client_Id_Key,NetPublicConstant.Client_Id_Value);
//					fBuilder.add(NetPublicConstant.Client_Secret_Key,NetPublicConstant.Client_Secret_Value);
//					
//					fBuilder.add(NetPublicConstant.Time_Key,time);
//					fBuilder.add(NetPublicConstant.Alg_Key,NetPublicConstant.Alg_Value);
//					fBuilder.add(NetPublicConstant.API_Ver_Key,NetPublicConstant.API_Ver_Value);
//					fBuilder.add(NetPublicConstant.Notify_Id_Key,NetPublicConstant.Notify_Id_Value);
//					fBuilder.add(NetPublicConstant.Access_Token_Key,NetPublicConstant.Client_Id_Value);
//					fBuilder.add(NetPublicConstant.Sign_Key, sign);
//					fBuilder.add(NetPublicConstant.Type_Key, type);
//					// 请求数据
//					fBuilder.add(NetPublicConstant.Data_Key, data);
//					
//					
//					RequestBody body=fBuilder.build();
//					Request request=new Request.Builder()
//					.url(NetPublicConstant.URL).post(body).build();
//					
//					Response response = client.newCall(request).execute();
//					
//					String result = response.body().string();
//					Log.v("TAG",result);
//					
//					
//				}catch(Exception e)
//				{
//					
//				}
//				
//			}
//		});
//	}
//	
}
